Method and system for compensating for adjacent tracks during reading of data

ABSTRACT

A method for reading a current track of data from a storage device includes using a first read head to read the current track of data and at least a first portion of at least one adjacent track of data, using at least a second read head to read at least a portion of the current track of data and at least a second portion of the at least one adjacent track of data, and decoding the data read from the current track, including processing signals from the first read head and the at least a second read head, to at least partly remove, from the signal from the first read head, contributions from the first portion of the at least one adjacent track of data. The decoding may include deriving expressions relating contributions from the current and adjacent tracks, and solving the expressions using least-mean-square analysis.

CROSS REFERENCE TO RELATED APPLICATION

This claims the benefit of commonly-assigned U.S. Provisional Patent Application No. 61/322,253, filed Apr. 8, 2010, which is hereby incorporated by reference herein in its entirety.

BACKGROUND

The background description provided herein is for the purpose of generally presenting the context of the disclosure. Work of the inventors hereof, to the extent the work is described in this background section, as well as aspects of the description that may not otherwise qualify as prior art at the time of filing, are neither expressly nor impliedly admitted to be prior art against the present disclosure.

This disclosure relates to a method and system for reading data that has been recorded in an arrangement of tracks on a storage medium and is read by a read head that moves relative to the surface of the storage medium. More particularly, this disclosure relates to compensating, during a read operation, for contributions to the read signal from an adjacent track or tracks.

In magnetic recording, as one example of a type of recording in which reading and writing are performed by a head that moves relative to the surface of the storage medium, data may be written in circular tracks on a magnetic disk. In known magnetic recording systems, track pitch is limited by the write head width. The read head is designed to be narrower than the write head so that reading can occur without picking up signals from any adjacent track. In addition, guard bands—empty bands on either side of each track—are provided to help prevent cases where data on one track are overwritten during writing of an adjacent track because of write head positioning errors.

In order to increase recording densities, it is desirable to shrink the track pitch and reduce or remove the guard bands between the tracks, which allows more tracks to fit on the recording medium. For example, in “Shingle Write Recording,” the tracks are written so that one track partially overlaps the previous track. In such a system, track pitch theoretically may be arbitrarily small. In practice, in a Shingle Write Recording system, the track pitch is limited by the read head width. If track pitch is narrower than the read head width, then the read head may pick up a significant amount of signals from one or more adjacent tracks, leading to low data reliability.

In order to further reduce the track pitch beyond the read head width, it is necessary to mitigate the interference picked up from adjacent tracks during a read operation. If the component of the adjacent track picked up by the read head is sufficiently small, it may be possible to use knowledge of the data written on the adjacent track to carry out ITI cancellation.

Copending, commonly-assigned U.S. patent application Ser. No. 12/882,802, filed Sep. 15, 2010 and hereby incorporated by reference herein in its entirety, describes a method and system for compensating for ITI by using actual or estimated data from the adjacent track.

SUMMARY

An embodiment of a method for reading a current track of data from a storage device includes using a first read head to read the current track of data and at least a first portion of at least one adjacent track of data, using at least a second read head to read at least a portion of the current track of data and at least a second portion of the at least one adjacent track of data, and decoding the data read from the current track, including processing signals from the first read head and the at least a second read head, to at least partly remove, from the signal from the first read head, contributions from the first portion of the at least one adjacent track of data.

In another embodiment of such a method, the at least one adjacent track of data includes a number of adjacent tracks of data greater than one, and the at least a second read head comprises a number of read heads equal to the number of adjacent tracks of data.

In yet another embodiment of such a method, the at least one adjacent track of data includes only one adjacent track of data, the at least a second read head comprises only one second read head.

In some embodiments of such a method, the using a first read head comprises using a first read head to read the current track of data and at least a first portion of each of at least one adjacent track of data, the using at least a second read head comprises using at least a second read head to read at least a portion of the current track of data and at least a second portion of each of the at least one adjacent track of data, and the decoding comprises decoding the data read from the current track, including processing signals from the first read head and each of the at least a second read head, to at least partly remove, from the signal from the first read head, contributions from the first portion of each of the at least one adjacent track of data.

In some embodiments of such a method, the decoding includes deriving, from the signals from the read heads, expressions relating contributions from the current track and contributions from the adjacent tracks and solving the expressions using least-mean-square analysis to obtain data from the current track.

An embodiment of a storage device includes a storage medium having a plurality of tracks of data thereon, and a read data channel. The read data channel includes a first read head to read a current track of data and at least a first portion of each of at least one adjacent track of data, a second read head to read at least a portion of the current track of data and at least a second portion of each of the at least one adjacent track of data, and a decoder that processes signals from the first read head and each of the at least a second read head, to factor out at least partly remove, from the signal from the first read head, contributions from the first portion of each of the at least one adjacent track of data.

In another embodiment of such a storage device, the at least one adjacent track of data includes a number of adjacent tracks of data greater than one, and the at least a second read head comprises a number of read heads equal to the number of adjacent tracks of data.

BRIEF DESCRIPTION OF THE DRAWINGS

Further features of the disclosure, its nature and various advantages, will be apparent upon consideration of the following detailed description, taken in conjunction with the accompanying drawings, in which like reference characters refer to like parts throughout, and in which:

FIG. 1 is a simplified schematic view of four shingled data tracks with a read head, with which the disclosure may be used;

FIG. 2 is a view similar to FIG. 1 in which the read head is positioned to read contributions from a track of interest and only one additional track;

FIG. 3 is a graphical representation of the effects of ITI and ITI compensation on a signal;

FIG. 4 shows an arrangement of read heads in accordance with an embodiment of the disclosure; and

FIG. 5 is a schematic view of a decoder architecture in accordance with an embodiment of the disclosure.

DETAILED DESCRIPTION

This disclosure is a method and system for factoring out adjacent-track signals from a data storage read-back signal to recover a clear main-track data signal, particularly where the adjacent track signals result from ITI in a case of Shingle Write Recording, Two-Dimensional Magnetic Recording (TDMR) or other small-track-pitch recording techniques.

FIG. 1 shows a simplified schematic view of four shingled data tracks 101, 102, 103, 104, with a read-head 105 wider than the track pitch. Track 101 is written first, followed by track 102, 103, etc. Because the tracks are written in a shingled manner—e.g., track 102 partially overwrites information written on track 101. Track pitch is now limited by the size of read head 105—if the read head width is wider than the track pitch, read head 105 will pick up significant signal components from one or more adjacent tracks 101, 103 as indicated at 115 and 125, making it more difficult to demodulate data from the current track 102. As shown in FIG. 2, one possible way to deal with ITI is to use decisions from adjacent track to cancel ITI in the current track, by positioning read head 105 so that substantially all contributions to ITI come from a single track adjacent to the track of interest, as opposed two adjacent tracks as in FIG. 1.

Assuming that the tracks are read in the same order 101, 102, 103, 104, etc., in which they were written, as indicated by arrow A, then during the reading and decoding of track k (103), the hard disk controller may provide a read-back signal corresponding to the data on track k−1 (102), which has been read previously. The read-back information may used to cancel the ITI contribution to track k (103) from track k−1 (102).

The presence of even 10% ITI from an adjacent track, can lead to a significant performance degradation, unless ITI cancellation is applied. Curve 301 in FIG. 3 shows the bit error rate in a decoded signal as a function of signal-to-noise ratio in the absence of ITI, while curve 302 shows the same signal with uncompensated ITI, where, in FIG. 2, α=0.2 (i.e., in FIG. 2 20% of the signal picked up by read-head 105 comes from adjacent track k−1 (102)). Curve 303, which shows the same signal with ITI compensation according to an embodiment of the disclosure, is much closer to curve 301 than to curve 302 as most of the ITI has been removed.

Such a correction technique, one example of which is described in above-incorporated application Ser. No. 12/882,802, may involve pre-reading of the adjacent track and storage of the decoder decisions, which may require, in some implementations, a buffer large enough to hold a complete additional track's worth of data. This also may result, in some implementations, in a substantial reduction in read throughput in the case of a random data access mode—e.g., if the tracks are not read in order, then to read each track, an adjacent track must be read first, resulting in a 50% throughput reduction.

FIG. 4 shows an arrangement according to an embodiment of the present disclosure in which an array of two or more read heads is used to read the data. In the arrangement of FIG. 4, there are two read heads H1, H2 (401, 402), but the disclosure may be generalized to any number of read heads greater than or equal to two. In general, as the track pitch decreases relative to the size of the read head, so that the number of tracks spanned by each read head increases, the number of read heads used can be expected to increase accordingly.

If the direction of storage medium movement is indicated by arrow B in FIG. 4, then a particular location on the track medium will be read first by head H2 (402) and then sometime later will reach read head H1 (401). If y⁽¹⁾ and y⁽²⁾ are the signal components from the track of interest k−1 (102) and the adjacent track k (103), respectively, then the signal Y⁽²⁾ picked up by the head H2 (402) can be written as: Y ⁽²⁾ =αy ⁽¹⁾+(1−α)y ⁽²⁾ and the signal Y⁽¹⁾ picked up by the second head can be written as: Y ⁽¹⁾ =βy ⁽¹⁾+(1−β)y ⁽²⁾.

The objective is to solve for the signal component y⁽¹⁾ representing the track of interest k−1 (102). Using linear algebraic notation, the foregoing two equations may be written:

$\begin{bmatrix} Y^{(2)} \\ Y^{(1)} \end{bmatrix} = {\begin{bmatrix} \alpha & {1 - \alpha} \\ \beta & {1 - \beta} \end{bmatrix}\begin{bmatrix} y^{(1)} \\ y^{(2)} \end{bmatrix}}$ Solving for y⁽¹⁾, y⁽²⁾ yields:

$\begin{matrix} {\begin{bmatrix} y^{(1)} \\ y^{(2)} \end{bmatrix} = {\begin{bmatrix} \alpha & {1 - \alpha} \\ \beta & {1 - \beta} \end{bmatrix}^{- 1}\begin{bmatrix} Y^{(2)} \\ Y^{(1)} \end{bmatrix}}} \\ {= {{\frac{1}{{\alpha\left( {1 - \beta} \right)} - {\beta\left( {1 - \alpha} \right)}}\begin{bmatrix} \alpha & {- \beta} \\ {\alpha - 1} & {1 - \beta} \end{bmatrix}}\begin{bmatrix} Y^{(2)} \\ Y^{(1)} \end{bmatrix}}} \\ {= {{\frac{1}{\alpha - \beta}\begin{bmatrix} \alpha & {- \beta} \\ {\alpha - 1} & {1 - \beta} \end{bmatrix}}\begin{bmatrix} Y^{(2)} \\ Y^{(1)} \end{bmatrix}}} \end{matrix}$ For demodulating y⁽¹⁾, this would suggest an ITI cancellation filter of the form:

$F_{ITI} = {{\frac{1}{\alpha - \beta}\left\lbrack {\alpha_{\prime} - \beta} \right\rbrack}.}$ This is known as a Zero-Forcing (ZF) solution for the ITI filter taps, because it does not take noise into account. A ZF solution for ITI suffers from noise boosting, and does not provide good performance. A better solution would be a least-mean-square solution as described below.

The foregoing example illustrates the case where each read head overlaps two tracks—one track of interest and one adjacent track that contributes ITI. Such a system can be solved using two equations in two unknowns as shown above. It will further be appreciated that by using additional heads, systems of multiple equations in multiple unknowns may be solved. Thus, as track widths become narrower, and each read head covers multiple tracks, the number of heads can be increased. Moreover, if two-dimensional encoding/decoding is used over multiple tracks, a multiple-head embodiment of the present disclosure can be used.

FIG. 5 schematically shows the architecture of the decoder channels 501, 502 for the two read heads H1, H2 (401, 402). Each channel 501, 502 may have its own respective analog front end (AFE) 511, 512 and analog-to-digital converter (ADC) 521, 522. In the system shown in FIG. 4, it is assumed that the track that is being decoded is track k−1, i.e., the track contributing most of the signal to picked up by read head H1 (401), while read head H2 (402) primarily picks up information from adjacent, interfering track k. Therefore, downstream of analog-to-digital converter 522, channel 502 has a FIFO delay line 532 whose purpose will be discussed below, which feeds ITI cancellation filter 531 that operates on the signal from analog-to-digital converter 512 in according with the filtering technique discussed above. The output of read head H2 (402) is not further processed in this embodiment.

The output of ITI filter 531 is filtered, e.g. by FIR filter 541 and then provided as an input to Viterbi detector (VIT) 551. Depending on the channel architecture, Viterbi detector decisions can be sent to an Error Correction Decoder Module (ECD) 591, or can be sent along with FIR samples to some other block, such as a data-dependent Viterbi detector. Additionally, Viterbi decisions can be provided to channel reconstructive filter (H) 571. Reconstructed noiseless channel samples are then used to drive digital timing loop (DTL) 581 to provide timing signals for the two analog-to-digital converters 521, 522 and to adapt ITI and FIR filters 531, 541. Note that timing for the signal coming from the second read head (H2) 402 is determined (synchronized) by minimizing the noise in the signal y⁽¹⁾ representative of the data written on track k−1, rather than by the data on adjacent track y⁽²⁾, which is the primary component read by read head (H2) 402, although for track 502 this may be adjusted as described below. Because we are only interested in demodulating track k−1 (102) as opposed to track k (103), the analog-to-digital converter should be driven to choose sampling points minimizing the noise in signal y⁽¹⁾. On the other hand, the signal picked up by read head (H2) 402 should be sampled at the same signal points as sampled by read head (H1) 401 to be able to cancel contribution of the adjacent track k from the signal Y⁽¹⁾ picked up by read head (H1) 401. Therefore the timing for read head H2 (402) is driven by the timing recovery based on ITI-compensated FIR samples corresponding to track k−1 (103).

A zero-forcing solution such as that described above may suffer from noise boosting, leading to suboptimal performance. A better adaptation method for ITI filter taps may be based on minimizing squared error:

$\min\limits_{({I_{0},I_{1}})}\left\lbrack {{\left( {{I_{0}a^{(1)}} + {I_{1}a^{(2)}}} \right)F} - {\overset{\_}{y}}^{(1)}} \right\rbrack^{2}$ leading to: I ₀(k)=I ₀(k−1)−μ₀ e(a ⁽¹⁾ F) I ₁(k)=I ₁(k−1)+μ₁ e(a ⁽²⁾ F) where e=(I ₀ a ⁽¹⁾ +I ₁ a ⁽²⁾)F− y ⁽¹⁾ and μ₀ and μ₁ are damping constants and may be the same or different.

Remembering that the movement of the storage medium is indicated by arrow B in FIG. 4, that means that any particular portion of the storage medium will be read by read head H2 (402) before it is read by read head H1 (401). That means that there will be a phase offset θ between the signals from read heads H1, H2 (401, 402). This phase offset can be broken down into an integer portion θ_(I) and a fractional portion θ_(R).

The integer portion θ_(I) of the phase offset can be accounted for by FIFO delay line 532. The fractional portion θ_(R) of the phase offset may be used to delay sampling by analog-to-digital converter 522 from the timing indicated by digital timing loop filter 581. The value of θ can change from one track from another, and is calibrated during manufacturing. After calibration ADC2 522 will be set up to sample a phase offset θ_(R) with respect to ADC1 521. Digital timing loop filter 581, can provide some fine adjustment to this setting.

It should be noted that the foregoing techniques operate during tracking mode. However, because read head (H2) 402 flies ahead of read head (H1) 401, other techniques, such as digital interpolation of the signal picked up by read head (H2) 402 may be needed during acquisition mode to assure proper sampling of the signal picked up by read head (H2) 402.

Thus it is seen that a data storage system, and method of decoding stored data, in which contributions from one or more adjacent tracks may be accounted for in decoding one or more tracks of interest, has been provided.

It will be understood that the foregoing is only illustrative of the principles of the invention, and that the invention can be practiced by other than the described embodiments, which are presented for purposes of illustration and not of limitation, and the present invention is limited only by the claims which follow. 

What is claimed is:
 1. A method for reading a current track of data from a storage device, the method comprising: using a first read head to read the current track of data and at least a first portion of at least one adjacent track of data; using at least a second read head, respectively offset along the current track of data, and perpendicularly to the current track of data, relative to the first read head, to read at least a portion of the current track of data and at least a second portion of the at least one adjacent track of data, and adjusting the at least a portion of the current track of data and the at least a second portion of the at least one adjacent track of data read by the second read head to account for the offset; and decoding the data read from the current track, including processing signals from the first read head and the at least a second read head, to at least partly remove, from the signal from the first read head, contributions from the first portion of the at least one adjacent track of data.
 2. The method of claim 1 wherein: the at least one adjacent track of data includes a number of adjacent tracks of data greater than one; and the at least a second read head comprises a number of read heads equal to the number of adjacent tracks of data.
 3. The method of claim 1 wherein: the at least one adjacent track of data includes only one adjacent track of data; and the at least a second read head comprises only one second read head.
 4. The method of claim 3 wherein the decoding comprises: deriving, from signals from the first and second read heads, a first expression relating contributions from the current track and contributions from the one adjacent track.
 5. The method of claim 4 wherein the decoding further comprises: deriving, from the signal from the one second read head, a second expression relating contributions from the current track and contributions from the one adjacent track; and solving the first expression and the second expression to obtain data from the current track.
 6. The method of claim 3 wherein: the using a first read head comprises positioning the first read head to read data from the current track and less than all of the adjacent track; and the using a second read head comprises positioning the second read head to read data from the adjacent track and less than all of the current track.
 7. The method of claim 6 wherein the using a second read head comprises positioning the second read head to read data from substantially all of the adjacent track and less than all of the current track.
 8. The method of claim 3 further comprising deriving timing for the first read head and the second read head from data read by the first read head.
 9. The method of claim 8 wherein the adjusting comprises adjusting timing for the second read head based on phase difference between the first read head and the second read head resulting from the offset.
 10. The method of claim 1 wherein: the using a first read head comprises using a first read head to read the current track of data and at least a first portion of each of at least one adjacent track of data; the using at least a second read head comprises using at least a second read head to read at least a portion of the current track of data and at least a second portion of each of the at least one adjacent track of data; and the decoding comprises decoding the data read from the current track, including processing signals from the first read head and each of the at least a second read head, to at least partly remove, from the signal from the first read head, contributions from the first portion of each of the at least one adjacent track of data.
 11. The method of claim 10 further comprising deriving timing for the first read head and the at least a second read head from data that has been decoded from the current track to at least partially remove contributions from each of the at least one adjacent track of data.
 12. The method of claim 11 wherein the adjusting comprises adjusting timing for each of the at least second read head based on respective phase difference between the first read head and each of the at least a second read head resulting from the respective offset.
 13. The method of claim 1 wherein the decoding comprises: deriving, from the signals from the read heads, expressions relating contributions from the current track and contributions from the adjacent tracks; and solving the expressions using least-mean-square analysis to obtain data from the current track.
 14. A storage device comprising: a storage medium having a plurality of tracks of data thereon; and a read data channel including: a first read head to read a current track of data and at least a first portion of at least one adjacent track of data; at least a second read head, respectively offset along the current track of data, and perpendicularly to the current track of data, relative to the first read head, to read at least a portion of the current track of data and at least a second portion of the at least one adjacent track of data; and a decoder that processes signals from the first read head and the at least a second read head, including adjusting the at least a portion of the current track of data and the at least a second portion of the at least one adjacent track of data read by the second read head to account for the offset, to at least partly remove, from the signal from the first read head, contributions from the first portion of the at least one adjacent track of data.
 15. The storage device of claim 14 wherein: the at least one adjacent track of data includes a number of adjacent tracks of data greater than one; and the at least a second read head comprises a number of read heads equal to the number of adjacent tracks of data.
 16. The storage device of claim 15 wherein: the at least one adjacent track of data includes only one adjacent track of data; and the at least a second read head comprises only one second read head.
 17. The storage device of claim 16 wherein: the first read head is positioned to read data from the current track and a less than all of the adjacent track; and the second read head is positioned to read data from the adjacent track and less than all of the current track.
 18. The storage device of claim 17 wherein the second read head is positioned to read data from the adjacent track and less than all of the current track.
 19. The storage device of claim 16 wherein the decoder comprises: a first channel for the first read head; a second channel for the second read head; an inter-track interference filter having as inputs an output of the first channel and an output of the second channel, and having as an output a signal representing the current track from which interference from the adjacent track has been filtered; and a feedback loop that derives, from the output, timing signals for the first channel and the second channel.
 20. The storage device of claim 19 wherein: the second channel comprises a delay to perform the adjusting by accounting for phase difference between the first channel and the second channel resulting from the offset. 